/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.igorov.efficientsoft.business.gestorperfil;

import com.igorov.efficientsoft.dataaccess.domain.PerfilDAO;
import com.igorov.efficientsoft.dataaccess.model.TperfilVO;
import com.igorov.efficientsoft.services.PerfilDTO;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author igorov
 */
public class GestorPerfilImpl implements GestorPerfil{
    
    private PerfilDAO perfilDAO;
    private List<TperfilVO> perfilesVOs;

    public PerfilDAO getPerfilDAO() {
        return perfilDAO;
    }

    public void setPerfilDAO(PerfilDAO perfilDAO) {
        this.perfilDAO = perfilDAO;
    }
    
    

    public void deleteById(int i) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public void deleteByIndex(int index) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public List<PerfilDTO> getAll() {
        updateListVo();
//        List<TperfilVO> tperfilVOs = perfilDAO.getAll();
        List<PerfilDTO> perfilDTOs = new LinkedList<PerfilDTO>();
        
        for (Iterator<TperfilVO> it = perfilesVOs.iterator(); it.hasNext();) {
            TperfilVO tperfilVO = it.next();
            PerfilDTO perfilDTO = new PerfilDTO(tperfilVO.getNcodPerf(), tperfilVO.getCnomPerf());
            perfilDTOs.add(perfilDTO);
        }
        
        return perfilDTOs;
    }

    public PerfilDTO getById(int voId) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public PerfilDTO getByIndex(int indice) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
    
    public TperfilVO getVOatIndex(int indice) {
        return perfilesVOs.get(indice);
    }

    public int getIdAtIndex(int indice) {
        return getVOatIndex(indice).getNcodPerf();
    }

    public int getIndexOf(int voId) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public void saveOrUpdate(PerfilDTO o) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    public void updateListVo() {
        perfilesVOs = perfilDAO.getAll();
    }
    
}
